As the value and use of information continues to increase, individuals and businesses seek additional ways to process and store information. One option available to users is information handling systems. An information handling system generally processes, compiles, stores, and/or communicates information or data for business, personal, or other purposes thereby allowing users to take advantage of the value of the information. Because technology and information handling needs and requirements vary between different users or applications, information handling systems may also vary regarding what information is handled, how the information is handled, how much information is processed, stored, or communicated, and how quickly and efficiently the information may be processed, stored, or communicated. The variations in information handling systems allow for information handling systems to be general or configured for a specific user or specific use such as financial transaction processing, airline reservations, enterprise data storage, or global communications. In addition, information handling systems may include a variety of hardware and software components that may be configured to process, store, and communicate information and may include one or more computer systems, data storage systems, and networking systems.
To provide the data storage demanded by many modern organizations, information technology managers and network administrators often turn to one or more forms of RAID (redundant arrays of inexpensive/independent disks). Typically, the disk drive arrays of a RAID are governed by a RAID controller and associated software. In one aspect, a RAID may provide enhanced input/output (I/O) performance and reliability through the distribution and/or repetition of data across a logical grouping of disk drives.
RAID may be implemented at various levels, with each level employing different redundancy/data-storage schemes. RAID 1 implements disk mirroring, in which a first disk holds stored data, and a second disk holds an exact copy of the data stored on the first disk. If either disk fails no data is lost, because the data on the remaining disk is still available.
In RAID 3, data is striped across multiple disks. In a four disk RAID 3 system, for example, three drives are used to store data and one drive is used to store parity bits that can be used to reconstruct any one of the three data drives. In such systems, a first chunk of data is stored on the first data drive, a second chunk of data is stored on the second data drive, and a third chunk of data is stored on the third data drive. An Exclusive OR (XOR) operation is performed on data stored on the three data drives, and the results of the XOR are stored on a parity drive. If any of the data drives, or the parity drive itself, fails the information stored on the remaining drives can be used to recover the data on the failed drive.
In RAID systems that utilize shared disks in a host based RAID storage system problems often arise related to the “ownership” of a shared recovery disk. For example, in shared disk applications (applications in which two hosts share a RAID) a disk within the RAID may fail and need to be rebuilt. Problems often occur in determining which host will manage the rebuild operation of the replacement disk. Host based RAID firmware typically connects to an external JBOD (Just a Bunch of Disks) and has the added task of synchronizing its view of the storage with peers in the cluster via a shared bus. In the case of so-called “share nothing” clusters such as a Microsoft Cluster Server access to a disk within a RAID is only allowed by the concept of ownership. In these systems, rebuild of a degraded RAID disk is performed by the member of the cluster that owns the disk that is being rebuilt. However, in shared disk clusters such as Oracle Real Application Clusters (RACs) the concept of ownership does not exist. Accordingly, problems occur when a shared disk becomes degraded and it is unclear which host within a cluster will repair or rebuild the degraded disk.